package com.ditian.ret;

import java.util.List;

import com.alibaba.fastjson.annotation.JSONField;
import com.ditian.model.Face;
import com.ditian.model.Thresholds;
/**
 * COMPARE API返回值
 * @author chenweiyi
 *
 */
public class CompareRet extends Common {
	
	/**
	 * <pre>
	 * 	比对结果置信度，范围 [0,100]，小数点后3位有效数字，数字越大表示两个人脸越可能是同一个人。
	 *  注：如果传入图片但图片中未检测到人脸，则无法进行比对，本字段不返回。
	 *</pre>
	 */
	@JSONField(name="confidence")
	private double confidence;
	
	/**
	 * 一组用于参考的置信度阈值，Object类型，包含三个字段，均为Float类型、取值［0，100］，小数点后3位有效数字。
	 * 如果置信值低于“千分之一”阈值则不建议认为是同一个人，如果置信值超过“十万分之一”阈值，则是同一个人的几率非常高。
	 */
	@JSONField(name="thresholds")
	private Thresholds thresholds;
	
	/**
	 * <pre>
	 * 被检测的image_url1、image_file1或image_base64_1在系统中的标识。
	 * 注：如果未使用image_url1、image_file1或image_base64_1传入图片，本字段不返回。
	 * </pre>
	 */
	@JSONField(name="image_id1")
	private String imageId1;
	
	
	/**
	 * <pre>
	 * 被检测的image_url2、image_file2或image_base64_2在系统中的标识。
	 * 注：如果未使用image_url2、image_file2或image_base64_2传入图片，本字段不返回。
	 * </pre>
	 */
	@JSONField(name="image_id2")
	private String imageId2;
	
	/**
	 * <pre>
	 * 从image_url1、image_file1或image_base64_1中检测出的人脸数组，采用数组中的第一个人脸进行人脸比对。
	 * 注：如果未使用image_url1、image_file1或image_base64_1传入图片，本字段不返回。如果没有检测出人脸则为空数组
	 * </pre>
	 */
	@JSONField(name="faces1")
	private List<Face> faces1;
	
	/**
	 * <pre>
	 * 从image_url2、image_file2或image_base64_2中检测出的人脸数组，采用数组中的第一个人脸进行人脸比对。
	 * 注：如果未使用image_url2、image_file2或image_base64_2传入图片，本字段不返回。如果没有检测出人脸则为空数组
	 * </pre>
	 */
	@JSONField(name="faces2")
	private List<Face> faces2;

	public double getConfidence() {
		return confidence;
	}

	public void setConfidence(double confidence) {
		this.confidence = confidence;
	}

	public Thresholds getThresholds() {
		return thresholds;
	}

	public void setThresholds(Thresholds thresholds) {
		this.thresholds = thresholds;
	}

	public String getImageId1() {
		return imageId1;
	}

	public void setImageId1(String imageId1) {
		this.imageId1 = imageId1;
	}

	public String getImageId2() {
		return imageId2;
	}

	public void setImageId2(String imageId2) {
		this.imageId2 = imageId2;
	}

	public List<Face> getFaces1() {
		return faces1;
	}

	public void setFaces1(List<Face> faces1) {
		this.faces1 = faces1;
	}

	public List<Face> getFaces2() {
		return faces2;
	}

	public void setFaces2(List<Face> faces2) {
		this.faces2 = faces2;
	}

	@Override
	public String toString() {
		return "CompareRet [confidence=" + confidence + ", thresholds="
				+ thresholds + ", imageId1=" + imageId1 + ", imageId2="
				+ imageId2 + ", faces1=" + faces1 + ", faces2=" + faces2 + "]"+super.toString();
	}
	
	

}
